<?php
/**
 * 上传附件和上传视频
 * User: Jinqn
 * Date: 14-04-09
 * Time: 上午10:17
 */
include __DIR__."/Uploader.class.php";
/* 上传配置 */
$base64 = "upload";
switch (htmlspecialchars($_GET['action'])) {
    case 'uploadimage':
        $config = array(
            "pathFormat" => $CONFIG['imagePathFormat'],
            "maxSize" => $CONFIG['imageMaxSize'],
            "allowFiles" => $CONFIG['imageAllowFiles']
        );
        $fieldName = $CONFIG['imageFieldName'];
        break;
    case 'uploadscrawl':
        $config = array(
            "pathFormat" => $CONFIG['scrawlPathFormat'],
            "maxSize" => $CONFIG['scrawlMaxSize'],
            "allowFiles" => $CONFIG['scrawlAllowFiles'],
            "oriName" => "scrawl.png"
        );
        $fieldName = $CONFIG['scrawlFieldName'];
        $base64 = "base64";
        break;
    case 'uploadvideo':
        $config = array(
            "pathFormat" => $CONFIG['videoPathFormat'],
            "maxSize" => $CONFIG['videoMaxSize'],
            "allowFiles" => $CONFIG['videoAllowFiles']
        );
        $fieldName = $CONFIG['videoFieldName'];
        break;
    case 'uploadfile':
    default:
        $config = array(
            "pathFormat" => $CONFIG['filePathFormat'],
            "maxSize" => $CONFIG['fileMaxSize'],
            "allowFiles" => $CONFIG['fileAllowFiles']
        );
        $fieldName = $CONFIG['fileFieldName'];
        break;
}
/* 生成上传实例对象并完成上传 */
$up = new Uploader($fieldName, $config, $base64);

/**
 * 得到上传文件所对应的各个参数,数组结构
 * array(
 *     "state" => "",          //上传状态，上传成功时必须返回"SUCCESS"
 *     "url" => "",            //返回的地址
 *     "title" => "",          //新文件名
 *     "original" => "",       //原始文件名
 *     "type" => ""            //文件类型
 *     "size" => "",           //文件大小
 * )
 */
$getFileInfo=$up->getFileInfo();
$uptypearr=array(".png",".jpg", ".jpeg", ".gif", ".bmp");
if(in_array($getFileInfo['type'],$uptypearr)){
    //生成水印不生产缩略图
    $waterImgAdd=$this->img;
    if(getConfig('waterType')==0){
        //水印图片处理
        $waterimg="./".getConfig('waterImg');
        $waterImgvalue=$waterImgAdd->imgWater($getFileInfo['url'],$waterimg,getConfig('waterMarkpos'));
    }elseif(getConfig('waterType')==1){
        $fonttype='./static/fonts/'.getConfig('waterFont');
        $waterImgvalue=$waterImgAdd->textWater($getFileInfo['url'],getConfig('waterTXT'),getConfig('waterColor'),getConfig('waterMarkpos'),getConfig('waterFontSize'),$fonttype);
    }
    if(!$waterImgvalue){
        $getFileInfo['state']=$waterImgAdd->getError();
    }else{
        $getFileInfo['url']=$waterImgvalue;  
    }
}
$getFileInfo['url']=rtrim(getConfig('upload_http'),'/').trim($getFileInfo['url'],'.');
/* 返回数据 */
return json_encode($getFileInfo);

